#pragma once

enum class SocketError{Read, Write, Build, Connect, Other};

class SocketImpl
{
public:
	virtual ~SocketImpl();
	virtual int Recv();
	virtual int Send();

	virtual int Error(const SocketError&);
	
	int GetSocket() const{
		return _socket;	
	}
	int SetSocket(const int& sock){
		_socket = sock;
	}
protected:
	int _socket;
};

